package com.yy.tools.math
{
	/**
	 *处理数字的工具类 
	 * @author YY
	 * 
	 */
	public class NumberTool
	{
		public function NumberTool()
		{
		}
		
		/**
		 *把一个数字的每一个数位拆开来 
		 * @param numb
		 * @return 返回拆开后的数组[...万,千,百,十,个]
		 * 
		 */
		public static function spliceInt(numb:int):Array {
			numb = Math.abs(numb);
			var str:String = String(numb);
			var len:int = str.length;
			var arr:Array = [];
			var i:int;
			var base:int = Math.pow(10, len-1);
			for(i=0; i<len; i++) {
				arr.push(int(numb%(base*10)/base));
				base /= 10;
			}
			return arr;
		}
		
		/**
		 *获取指定范围的随机整数 
		 * @param star
		 * @param end
		 * @return 
		 * 
		 */
		public static function getNumberInRange(star:Number, end:Number):Number {
			var value:Number = star;
			value = star + (end - star)*Math.random();
			return value;
		}
		/**
		 *获取指定范围的随机整数 
		 * @param star
		 * @param end
		 * @param containEnd 是否包含结束的界限
		 * @return 
		 * 
		 */
		public static function getIntInRage(star:int, end:int, containEnd:Boolean=false):int {
			var value:int = star;
			if(containEnd) {
				value = star + (end - star + 1)*Math.random();
			}else{
				value = star + (end - star)*Math.random();
			}
			
			return value;
		}
	}
}